home *** CD-ROM | disk | FTP | other *** search
/ Educational Software Cooperative 4 / Educational Software Cooperative 4.iso / life25 / life.doc < prev    next >
Text File  |  1994-06-16  |  14KB  |  283 lines

  1.                             The "Game" of Life
  2.                               Copyright 1994
  3.  
  4.                        Castle Oaks Computer Services
  5.                            Post Office Box 36082
  6.                         Indianapolis, IN 46236-0082
  7.  
  8. The "Game" of Life is a computer simulation of a universe where the exist-
  9. ence or non-existence of "life" follows certain prescribed rules. It was 
  10. developed by Prof. John H. Conway at the University of Cambridge, and it 
  11. was first written up by Martin Gardner in his October 1970 "Mathematical 
  12. Games" column in Scientific American. Although this simulation does not 
  13. depict any real life situation, it is still interesting to see how over- or 
  14. under-population affects succeeding generations according to the rules for 
  15. this environment.
  16.  
  17. This implementation is a freeware program. It is copyrighted by Castle 
  18. Oaks. You may distribute it freely. However, if you do, you must include 
  19. this documentation file in its entirety. The purposes of this program are 
  20. to introduce you to the "Game" of Life, to entertain you, and to advertise 
  21. other Castle Oaks products. The following lists several Castle Oaks pro-
  22. ducts:
  23.  
  24. WORDFIND -
  25.  
  26. a system to help solve word puzzles.  It consists of a vocabulary of over 
  27. 100,000 words and a program to search that vocabulary for words that match 
  28. a template that the user specifies.  Suppose that you have the clue "rid-
  29. dles" and you know the second, fourth, and seventh letters are 'N', 'G', 
  30. and 'S' respectively.  You then enter the template, ?N?G??S, and the pro-
  31. gram returns these words that fit the template. 
  32.  
  33. ENIGMAS KNIGHTS ONAGERS
  34.  
  35. Wordfind includes a special feature that is useful in solving cryptograms.  
  36. The wild cards '-', '+', and '=' are reserved to indicate duplicate but un-
  37. known letters.  Thus, the template, -+=+=B-???+, means to find all words 
  38. where the 1st and 7th letters are the same, the 2nd, 4th, and 11th letters 
  39. are the same, the 3rd and 5th letters are the same, and the 6th letter is a 
  40. 'B'. WORDFIND will return "REMEMBRANCE" which is the only word that fits 
  41. that template.
  42.  
  43. Utilities are provided for modifying the vocabulary or for creating addi-
  44. tional vocabularies. Also, three auxiliary vocabularies are available at a 
  45. cost of $15.00 per set. Set A has over 174,000 unusual words and words of 
  46. variant spellings. Set B has over 135,000 entries which consists of expres-
  47. sions, all words in the old and new testaments, armament terms, and places 
  48. names. They are divided into seven subsets. Set C has over 167,000 entries 
  49. in subsets of Latin, German, Spanish, French, Italian, Jewish, and Literary 
  50. terms.
  51.  
  52. WORDFIND contains a feature called UNAGRAM which unscrambles anagrams.  
  53. Registration fee for WORDFIND is $15.00.
  54.  
  55. CROSSWORDS PUZZLE SOLVER -
  56.  
  57. This is a credit card size device that provides some of the same features 
  58. as WORDFIND. It is handy to carry with you when you do not have access to 
  59. your computer. This is a product of Franklin Electronic Publishers, Inc. 
  60. The suggested retail price is $49.95. You may order it from Castle Oaks for 
  61. $40.00 plus $5.00 shipping and handling.
  62.  
  63. CLUEFIND -
  64.  
  65. Similar to WORDFIND but the user builds his own vocabularies with clues 
  66. included with the words. Cost is $10.00.
  67.  
  68. TEXTFIND -
  69.  
  70. This program allows you to provide a template with known characters (even 
  71. non-alphabetic ones) and wild cards for unknown characters.  Then using 
  72. this template, you may search any file (even executable ones) for character 
  73. strings that match the given template.  TEXTFIND registration is $10.00.
  74.  
  75. HINTHUNT(TM) -
  76.  
  77. a program to generate word search puzzles.  Great for teachers.  Includes 
  78. options for simpler puzzles and the capability for the word list and puzzle 
  79. words to be different. Particularly useful for foreign language vocabulary 
  80. drills. Cost of HINTHUNT(TM) is $15.00.
  81.  
  82.  
  83. TRAC/TRAP -
  84.  
  85. a tutorial on the machine and assembly languages of a pseudo computer.  
  86. This provides an introduction to these concepts.  The package includes the 
  87. pseudo computer simulator and assembly programs; lessons in their use; 
  88. example TRAC and TRAP programs; and exercises with answers.  Registration 
  89. fee for TRAC/TRAP is $10.00.
  90.  
  91. TO - FROM Utilities -
  92.  
  93. programs to convert files of 8-bit characters to files of 7-bit characters 
  94. and vice versa.  If you ever need to upload a file to a host computer that 
  95. cannot accept 8-bit characters (for example, MCI Mail), this system will 
  96. allow you to do so.  Also, some communication packages will only allow 
  97. ASCII characters (7-bit characters) to be transmitted.  Perhaps you have a 
  98. spreadsheet or a database that you wish to upload to a host for repository 
  99. and for later downloading to your own or other computers.  You can use 
  100. these utilities and the only penalty will be a slight increase in file size 
  101. (approximately 33%).  Registration fee for the TO - FROM Utilities is 
  102. $10.00.
  103.  
  104. GAME PACKAGE -
  105.  
  106.      TOWERS - This is a game and more. It is the Towers of Hanoi puzzle. In 
  107.      this puzzle you have 3 towers; on one tower are disks of different 
  108.      sizes. The object of this puzzle is to move all the disks, one at a 
  109.      time, to another tower such that you never place a larger disk on top 
  110.      of a smaller disk. With this package you can try to solve the puzzle; 
  111.      you may watch the program give the minimum move solution; and the 
  112.      package provides a selection of 5 screen savers. 
  113.  
  114.      CARD MATCH - A concentration type game. It uses a standard deck of 
  115.      playing cards. These are to be matched in pairs. Three levels of play 
  116.      are provided and you may play alone or against an opponent. Although 
  117.      there are many games like this available, this one does not require an 
  118.      advanced graphics card. It will run on CGA. 
  119.  
  120.      HURKLE - A game to find the "Hurkle" in a 15 x 15 grid.
  121.  
  122. The game package is freeware. It may be obtained for a shipping and han-
  123. dling fee of $5.00.
  124.  
  125. You may obtain the latest copy of 'The "Game" of Life' by sending a ship-
  126. ping and handling fee of $5.00 to Castle Oaks.
  127.  
  128. OTHER ARTICLES -
  129.  
  130. There have been several articles written about the "Game" of Life. Two 
  131. articles were published in the December 1978 issue of Byte magazine and 
  132. another one in the January 1979 issue of Byte magazine. The latter is only 
  133. of historical interest. That article explores methods of writing a program 
  134. to minimize the amount of memory required. In those days, personal 
  135. computers only had a few K of memory.
  136.  
  137. The other two article in Byte give a very good description of the simula-
  138. tion and they analyze and name various starting patterns and what results 
  139. from those starting patterns. Included in this package are 14 starting 
  140. patterns that were described in those articles. Other patterns also were 
  141. described but I will leave it up to you to look up those patterns and/or 
  142. create patterns of your own. Later, I will describe the patterns included.
  143.  
  144. INTRODUCTION -
  145.  
  146. In most implementations, it is assumed that the environment of the simula-
  147. tion is a two-dimensional plane that is infinite. This, of course, is not 
  148. practical. Due to computer limitations, there are edges to the plane. In 
  149. order to avoid that, this implementation uses the surface of a torus as the 
  150. environment. In this way, the environment is finite, but unbounded. Fur-
  151. thermore, so that this program can be run on a minimal machine, CGA charac-
  152. ter graphics are used. 
  153.  
  154. On the screen, you will see a window that is 21 lines tall and 38 columns 
  155. wide. You must visualize the environment as having the top of the window 
  156. joined to the bottom of the window; and the right edge of the window joined 
  157. to the left edge of the window. In some simulations, you will see groups of 
  158. occupied cells leave one edge of the screen and re-appear at another edge 
  159. of the screen. Although the window is not very large, it is usally large 
  160. enough for most purposes.
  161.  
  162. RULES -
  163.  
  164. 1. If a cell (occupied or not) has exactly 3 neighboring cells occupied, 
  165. then the given cell will be occupied in the next generation.
  166.  
  167. 2. If a cell is occupied and has exactly 2 neighboring cells occupied, it 
  168. will remain occupied in the next generation.
  169.  
  170. 3. If neither (1) nor (2) apply, the cell will not be occupied in the next 
  171. generation.
  172.  
  173. PATTERNS -
  174.  
  175. The "Game" of Life has been analyzed by various researchers and they have 
  176. published their finding of what happens with some starting patterns. In the 
  177. Byte article written by David J. Buckingham, he has described 5 classes of 
  178. objects. 
  179.  
  180. Class I is still lifes. These are objects that do not change unless dis-
  181. turbed by other objects.
  182.  
  183. Class II is oscillators. These are objects that after a number of genera-
  184. tions return to their starting pattern. They may be rotated or inverted at 
  185. the end of a cycle.
  186.  
  187. Class III is spaceships. These objects move across the environment.
  188.  
  189. Class IV is uniform propigators. They are objects that move and may produce 
  190. other objects.
  191.  
  192. Class V is random. It is anything that does not fit one of the above class-
  193. es.
  194.  
  195. SUPPLIED PATTERNS -
  196.  
  197. I have not includes any still life objects by themselves since I think you 
  198. will not find them very interesting. However, you are bound to stumble on 
  199. to some of these yourself. 
  200.  
  201. A block and a beehive are both still lifes. The file BLCKBEEH illustrates 
  202. how a block can destroy a beehive.
  203.  
  204. The files 3EATER and 6EATER illustrate other still lifes that "eat" other 
  205. objects.
  206.  
  207. The files OSCPER5, PULSAR, TUMBLER, and PENTADEC are oscillators of various 
  208. periods.
  209.  
  210. A subclass of the oscillators are shuttles. BSCSHUTT and TWINBEES show 
  211. objects that shuttle back and forth while eaters cleanup debris.
  212.  
  213. Spaceships are depicted using the files: 3GLIDERS, SPACSHIP, and GLIDEGUN.
  214. These are objects that keep moving. GLIDEGUN ejects a projectile.
  215.  
  216. The file SCHICK is of class IV. It is called a puffer train. Two spaceships 
  217. appear to be pulling another object. Another is SNWFLKS. A snowflake (3 in 
  218. this file) will generate a honey farm which is a group of 4 beehives.
  219.  
  220. INSTRUCTIONS -
  221.  
  222. When you run the program, some instructions will appear in a series of 
  223. screens to guide you through the process. The opening screen gives a brief 
  224. description of the rules and the environment.
  225.  
  226. The next screen asks you if you want to load a pattern from a file. If you 
  227. respond "yes", you will be asked for the name of the file to be loaded. If 
  228. the file is not in the currently logged directory, you must include the 
  229. path to that file. If the file cannot be found, the program will pause
  230. until you press a key. It will then continue without loading a file.
  231.  
  232. Next, the program determines if you have a mouse. If you do not have a 
  233. mouse, you are advised of that and when you press any key, the program will 
  234. continue and you must position the cursor using the cursor keys. If you 
  235. have a mouse, you are given the option of using the keyboard or the mouse. 
  236. If you load a pattern from a file and do not intend to modify it, this 
  237. question can be answered either way.
  238.  
  239. After selecting either keyboard or mouse, a grid of cells will be displayed 
  240. and if you have loaded from a file, some of the cells will be occupied. At 
  241. this point, you can insert occupants into empty cells and erase occupants, 
  242. even if you loaded from a file. The method of doing this depends on which 
  243. option you chose. The upper border will display "Generation is 0".
  244.  
  245. If you chose the keyboard, you use the cursor keys to move the cursor to 
  246. any cell you desire. Pressing any key (except ESC) will enter a rectangle
  247. in the selected cell. Repeat this procedure for all the cells you want 
  248. occupied. You can erase a rectangle by positioning the cursor on it and 
  249. pressing any key (except ESC). When you are done loading all the cells
  250. you want occupied, press ESC to terminate entry mode.
  251.  
  252. If you chose the mouse, use the mouse to move the mouse cursor to any cell 
  253. you desire. Clicking the left mouse button will enter a rectangle in the 
  254. selected cell. Repeat this procedure for all the cells you want occupied. 
  255. You can erase a rectangle by positioning the cursor on it and clicking the 
  256. left mouse button. When you are done loading all the cells that you want 
  257. occupied, click the right mouse button to terminate entry mode.
  258.  
  259. After terminating the entry mode, you will be asked if you want to save the 
  260. starting pattern to a file. If you respond "yes", you will be prompted for 
  261. a file name. Include a path, if necessary. After responding "no" or giving 
  262. a file name, the screen will clear and the next generation will be dis-
  263. played. (Note: If you wish to create or modify a starting pattern file, you 
  264. can do so with a text editor. Such files consist of 21 lines of 38 charac-
  265. ters. Each line is terminated with a carriage return and line feed. Unoccu-
  266. pied cells are denoted with a period. Occupied cells can contain any other 
  267. character. Although such editing is possible, it is unnecessary since 
  268. editing can be done within the program and the result saved.)
  269.  
  270. Pressing any key, except ESC or Q, will advance the display to the next 
  271. generation. The generation count in the top border will increment. If you 
  272. want the display to change rapidly, you can hold a key down and the display 
  273. will advance generation after generation. If your machine is too slow to 
  274. process each generation at the typeamatic speed, you will overflow the 
  275. keyboard buffer and the computer will beep at you. Just release the key 
  276. until the computer catches up. 
  277.  
  278. When you have seen as many generations as you want to see, or if the dis-
  279. play stabilizes, you can terminate by pressing either ESC or Q. The screen 
  280. will clear and you will be asked if you want to exit the program. If you 
  281. respond by pressing E, the program will terminate. If you press anything 
  282. else, the program will restart at the opening screen.
  283.